The field of automated speech interpretation is in increasingly higher demand. The use of automated speech interpretation is becoming progressively more common in a variety of applications. Examples of speech-based applications include automated call centers or automated operators. Automated call centers may service telephone calls from customers regarding products or services, for example. Instead of speaking with a “live” customer service agent, the caller may be instructed to respond to automated prompts or questions by speaking the answer. In some cases, the caller may engage in a dialogue with a computer interface. During the call, the application interprets the speech utterances of the caller and may then access relevant information, such as account balances, flight times, or the like. By using automated speech recognition systems, the call center can rely on fewer “live” customer service agents to perform services for the callers, thereby reducing numerous personnel issues.
Automated speech recognition systems often rely on a set of internal representations to interpret the incoming speech utterances. These internal representations provide the framework for the speech-based application to respond to the utterances. For example, the internal representations may instruct the speech-based application how to interpret different words, phrases, content, or pauses of the utterances. Based on the interpretation, the speech-based application may take an action, such as retrieve a billing history or access a company directory. In order to accurately interpret the utterances, the internal representations are typically updated on an ongoing basis as more utterances are received and the results reviewed. By updating the internal representations, the performance of the speech-based application may be improved.
One method for improving the performance of a speech-based application is to employ a human “expert,” or team of experts, to review the behavior of the application and subsequently modify the internal representations in order to improve its performance. For instance, the human may examine the utterances provided to the application and then examine the associated output or action taken by the speech-based application in response to the utterance. Through analysis, the human can determine what changes or modifications need to be made to the internal representations in order to improve performance and accuracy. The human can then manually make adjustments to the internal parameters to modify the behavior of the system.
Such techniques used to improve the accuracy of the application require the human acquire a certain, and often a high, level of knowledge about the operation of the system in order to make the required adjustments. This process may also be time consuming and labor intensive. Additionally, since the internal representations, or “models,” of the speech-based application typically are based on statistics collected from sample data, one of the obstacles to deploying a speech-based application is the collection of sufficient data in order to build accurate models.